💡 Прокачай Python: потоки, процессы и производительность
Хотите ускорить свои Python-приложения и сделать их более отзывчивыми?
🔝 Это видео — отличное руководство по конкурентному и параллельному программированию в Python.
🔧 Что разбирают в видео:
— В чём разница между конкурентностью и параллелизмом
— Как использовать многопоточность (
— Как добиться настоящего параллелизма с
— Что такое GIL и как обойти его ограничения
— Как безопасно делить данные между потоками через mutex'ы
— Как реализовать фоновую обработку, чтобы избежать блокировок API
✅ Подходит для разработчиков любого уровня.
🔗 Смотреть видео: https://clc.to/uZgzbw
Библиотека питониста #буст
Хотите ускорить свои Python-приложения и сделать их более отзывчивыми?
🔝 Это видео — отличное руководство по конкурентному и параллельному программированию в Python.
🔧 Что разбирают в видео:
— В чём разница между конкурентностью и параллелизмом
— Как использовать многопоточность (
threading
) для одновременного выполнения задач— Как добиться настоящего параллелизма с
multiprocessing
— Что такое GIL и как обойти его ограничения
— Как безопасно делить данные между потоками через mutex'ы
— Как реализовать фоновую обработку, чтобы избежать блокировок API
Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🎬 Документальный фильм о Python
На PyCon недавно презентовали трейлер этого уникального проекта — фильм, полностью посвящённый нашему любимому языку программирования.
🤔 Лично я впервые вижу, чтобы про язык программирования снимали полноценный документальный фильм.
Будет ли он интересен не только разработчикам, но и широкой аудитории?
💬 Что думаете? Делитесь в комментариях!
🔗 Ссылка на трейлер: https://clc.to/GHAsrg
Библиотека питониста #свежак
На PyCon недавно презентовали трейлер этого уникального проекта — фильм, полностью посвящённый нашему любимому языку программирования.
🤔 Лично я впервые вижу, чтобы про язык программирования снимали полноценный документальный фильм.
Будет ли он интересен не только разработчикам, но и широкой аудитории?
🔗 Ссылка на трейлер: https://clc.to/GHAsrg
Библиотека питониста #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Хотите писать чистый, читаемый и лаконичный код без явных циклов? Тогда самое время освоить функции высшего порядка —
map()
, filter()
и reduce()
. Функции высшего порядка — это функции, которые:
— принимают другие функции как аргументы,
— или возвращают функции в качестве результата.
В Python это не только
map()
, filter()
и reduce()
, но и любые функции, работающие с другими функциями.map()
: применяем функцию ко всем элементамИспользуется для трансформации каждого элемента в итерируемом объекте:
string_numbers = ["1", "2", "3", "4"]
int_numbers = map(int, string_numbers)
print(list(int_numbers)) # [1, 2, 3, 4]
Или, например:
def add_five(x): return x + 5
numbers = [1, 2, 3]
result = map(add_five, numbers)
print(list(result)) # [6, 7, 8]
filter()
: фильтруем по условиюОтбирает элементы, удовлетворяющие определённому условию:
data = [0, None, 1, 2, None, 3]
filtered_data = filter(None, data)
print(list(filtered_data)) # [1, 2, 3]
Пример с четными числами:
def is_even(x): return x % 2 == 0
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = filter(is_even, numbers)
print(list(even_numbers)) # [2, 4, 6]
reduce()
: аккумулируем значенияФункция из модуля
functools
, применяется для накопления результата по итерации:from functools import reduce
def add(x, y): return x + y
numbers = [1, 2, 3, 4, 5]
result = reduce(add, numbers)
print(result) # 15
Пример нахождения максимума:
def max_value(x, y): return x if x > y else y
numbers = [10, 2, 33, 4, 7]
result = reduce(max_value, numbers)
print(result) # 33
Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
⠀
Даже если вы давно работаете с Python, в стандартной библиотеке наверняка найдётся что-то, о чём вы ещё не знали.
Мы собрали 7 недооценённых модулей, которые помогут:
⠀
📖 Подробнее — в полной статье: https://clc.to/9eN3cA
Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM